Accurate target detection system

ABSTRACT

An accurate target detection system. The system includes a sensor ( 22 ) that receives electromagnetic signals and provides electrical signals in response thereto. A non-uniformity correction circuit ( 28, 38, 52 ) corrects non-uniformities in the sensor ( 22 ) based on the electrical signals and provides calibrated electrical signals in response thereto. A third circuit ( 30, 32, 34, 38, 42, 44, 52 ) determines if a target signal is present within the calibrated electrical signals and provides a target detection signal in response thereto. A fourth circuit ( 38, 40, 48 ) selectively activates or deactivates the non-uniformity correction circuit ( 28, 38, 52 ) based on the target detection signal. In a specific embodiment, the sensor ( 22 ) is an array of electromagnetic energy detectors ( 22 ), each detector providing an electrical detector output signal The non-uniformity correction circuit ( 28, 38 , and  52 ) includes circuit for compensating for gain, background, and noise non-uniformities ( 28, 38 , and  52 ) in the electromagnetic energy detectors. The non-uniformity correction circuit ( 28, 38 , and  52 ) includes a detector gain term memory ( 28 ) for storing detector gain compensation values. The detector gain compensation values are normalized by noise estimates unique to each of the detectors. The third circuit ( 30, 32, 34, 38, 42, 44 , and  52 ) includes a signal enhancement circuit for reducing noise ( 34, 42 ) in the calibrated electrical signals. The third circuit ( 30, 32, 34, 38, 42, 44 , and  52 ) includes a noise estimation circuit ( 32, 38 ) that estimates noise in each of the detector output signals and provides noise estimates in response thereto. The noise estimation circuit ( 32, 38 ) further includes a noise estimator circuit ( 38 ) and a recursive background estimator ( 32 ). The third circuit ( 30, 32, 34, 38, 42, 44, 52 ) further includes a subtractor ( 30 ) for subtracting background from the calibrated electrical signals and providing background subtracted signals in response thereto. The signal enhancement circuit ( 34, 42 ) includes a frame integrator circuit for adding frames of image data ( 34 ), each frame containing data corresponding to the background subtracted signals and providing summed frames in response thereto. The third circuit ( 30, 32, 34, 38, 42, 44, 52 ) includes a first threshold circuit ( 44 ) for comparing the filtered signal to a first threshold and a second threshold and providing a threshold exceedance signal if the filtered signal is between the first threshold and the second threshold.

BACKGROUND OF THE INVENTION

[0001] 1. Field of Invention

[0002] This invention relates to target detection systems. Specifically, the present invention relates to systems employing electro-optical sensors to detect targets using constant false alarm rate detection processes

[0003] 2. Description of the Related Art

[0004] Target detection systems are used in a variety of demanding applications including radar air traffic control systems, missile target tracking systems, and electro-optical target detection systems employed on aircraft and ground-based military vehicles. Such applications often require accurate target detection systems that produce minimal false detections.

[0005] A target detection system typically includes an electromagnetic energy sensor that receives electromagnetic signals such as optical signals and outputs electronic signals in response thereto. A processing circuit analyzes the electronic output signals to determine if a target is present in the field of view of the sensor.

[0006] The sensor is often a focal plane array of electromagnetic energy detectors such as charge-coupled devices (CCDs). Detectors in the array may have different performance characteristics that may change with a changing signal environment. Often, the detectors are initially calibrated by aiming the sensor at a dark, uniform region of space. Electrical offset values or gain coefficients are applied to the outputs of the detectors to equalize the outputs and thereby compensate for detector signal non-uniformities.

[0007] In a typical constant false alarm rate (CFAR) target detection system, the processing circuit includes a detector non-uniformity correction circuit for performing the calibration, a background estimation circuit, and a threshold circuit. The background estimation circuit determines an initial background value that is subtracted from the outputs of the detectors to enhance signal-to-noise ratio. The threshold circuit establishes a detection voltage threshold range for the detectors in the array. Typically, a single threshold range is established for all detectors in the array.

[0008] An ‘alarm’ occurs when the magnitude of a detector output signal is within the threshold range. By controlling the threshold range, the target detection system can control the probability of making a false detection. However, decreasing the probability of false detection may increase the likelihood that a target will go undetected.

[0009] Use of a single threshold range for all detectors in the array is inefficient, as the performance capabilities of individual detectors are often not maximized. For example, low performance detectors may raise the desired lower threshold of the threshold range. Due to the higher threshold, the capability of any high performance pixels to detect targets in noisy environments is not utilized.

[0010] Detector background estimation is often performed when the target detection system is initially activated and is disabled thereafter. In existing systems, if the background estimation circuit remains enabled, target information may corrupt the background estimates. The corrupted values may greatly reduce the target detection capability of the system. Accordingly, many existing target detection systems fail to account for variations in background that often occur during system operation. As a result, the ability of such target detection systems to accurately detect targets is compromised.

[0011] Hence, a need exists in the art for an accurate target detection system that accounts for varying detector background levels and changing signal environments during system operation.

SUMMARY OF THE INVENTION

[0012] The need in the art is addressed by the accurate target detection system of the present invention. In the illustrative embodiment, the inventive system is adapted for use with electro-optical systems and includes a first circuit for receiving electromagnetic signals and providing electrical signals in response thereto. A second circuit corrects background non-uniformities and/or noise in the first circuit based on the electrical signals and provides calibrated electrical signals in response thereto. A third circuit determines if a target signal is present within the calibrated electrical signals and provides a target detection signal in response thereto. A fourth circuit selectively activates or deactivates the second circuit based on the target detection signal.

[0013] In a specific embodiment, the first circuit is an array of electromagnetic energy detectors, each detector providing an electrical detector output signal. The second circuit includes a non-uniformity correction circuit for compensating for gain non-uniformities and noise non-uniformities in the electromagnetic energy detectors. The second circuit includes a detector gain term memory for storing detector gain compensation values. The detector gain compensation values are normalized by noise estimates unique to each of the detectors. The third circuit includes a signal enhancement circuit for increasing the signal-to-noise ratio of the calibrated electrical signals. The third circuit includes a noise estimation circuit for estimating noise in each of the detector output signals and providing noise estimates in response thereto. The noise estimation circuit further includes a noise estimator and a recursive background estimator. The third circuit further includes a subtractor for subtracting background contained in the noise estimates from the calibrated electrical signals and providing background subtracted signals in response thereto. The signal enhancement circuit includes a frame integrator circuit for summing frames of image data and providing summed frames in response thereto. Each frame of image data contains data corresponding to the background subtracted signals. The signal enhancement circuit further includes a filter bank that enhances the signal-to-noise ratio of the summed frames and provides a filtered signal in response thereto. The third circuit includes a first threshold circuit for comparing the filtered signal to a first threshold and a second threshold and providing a threshold exceedance signal if the filtered signal is between the first threshold and the second threshold.

[0014] In the illustrative embodiment, the third circuit further includes a digital signal processor running a fuzzy controller that acilitates the determination of the first threshold by providing a threshold multiplier value The first threshold is a function of the threshold multiplier and noise variables for the background subtracted signals. The noise variables include a mean noise offset, noise variance estimates from the background subtracted signals, and a noise statistic for accounting for moments greater than two in noise statistics of the background subtracted signals. The fourth circuit includes a second threshold circuit for comparing the background subtracted signals to a target detection threshold and providing the target detection signal in response thereto when the background subtracted signals exceed the target detection threshold. The target detection signal acts as an inhibit signal and is input to background and noise estimation circuits to disable the estimation circuits when the target signal is possibly present with in the background subtracted signals. The first threshold is a function of the noise variance estimates and a second threshold multiplier.

[0015] The novel design of the present invention is facilitated by use of the second threshold circuit to selectively inhibit background updates and noise estimation calculations for the outputs of detectors of the sensor that possibly represent target data. As a result, background estimation functions and noise estimation functions may continue to run during operation of the target detection system of the present invention. This allows the target detection system of the present invention to track any changes in signal environment and detector noise performance during system operation This greatly increases the ability of the target detection system of the present invention to detect targets in noisy environments. Furthermore, use of threshold levels unique to each detector in the second threshold circuit and the first threshold circuit allows the present invention to optimize the target detection capabilities of each detector in the sensor.

BRIEF DESCRIPTION OF THE DRAWINGS

[0016]FIG. 1 is a diagram of a target detection system constructed in accordance with the teachings of the present invention

[0017]FIG. 2 is a diagram of the recursive background estimator of the target detection system of FIG. 1.

[0018]FIG. 3 is a diagram of the noise estimator of the target detection system of FIG. 1.

[0019]FIG. 4 is a diagram of the frame integrator of the target detection system of FIG. 1.

[0020]FIG. 5 is a diagram of the matched filter bank of the target detection system of FIG. 1.

[0021]FIG. 6 is a diagram of a diagram of a finite impulse response (FIR) filter of the filter bank of FIG. 5.

[0022]FIG. 7 is a diagram showing key functional blocks of a fuzzy threshold controller implemented in the digital signal processor of the target detection system of FIG. 1.

[0023]FIG. 8 is a graph of the input feature of the fuzzy threshold controller of FIG. 7.

[0024]FIG. 9 is a graph of the output feature of the fuzzy threshold controller of FIG. 7.

DESCRIPTION OF THE INVENTION

[0025] While the present invention is described herein with reference to illustrative embodiments for particular applications, it should be understood that the invention is not limited thereto. Those having ordinary skill in the art and access to the teachings provided herein will recognize additional modifications, applications, and embodiments within the scope thereof and additional fields in which the present invention would be of significant utility.

[0026]FIG. 1 is a diagram of a target detection system 20 constructed in accordance with the teachings of the present invention. The target detection system 20 includes a sensor 22, the output of which is connected to a analog-to-digital converter (ADC) 24. An output of the ADC 24 is connected to a first input of a first multiplier 26. A second input of the first multiplier 26 is connected to an output of a normalized detector gain term memory 28. An output of the first multiplier 26 is connected to a positive terminal of a subtractor 30. A negative terminal of the subtractor 30 is connected to an output of a recursive background estimator 32. An output of the subtractor 30 is connected, in parallel, to an input of a frame integrator 34, a frame store 36, a noise estimator 38, and a uni-level threshold circuit 40. An output of the uni-level threshold circuit 40 is connected, in parallel, to an input of the recursive background estimator 32 and an input of the noise estimator 38 An output of the frame integrator 34 is connected to a filter bank 42 An output of the filter bank 42 is connected to an input of a bi-level threshold circuit 44, an output of which is connected to an address generator 46. An output of the noise estimator 38 is connected, in parallel, to an input of a second multiplier 48 and a first input of a third multiplier 50. Another input of the second multiplier 48 is connected to a digital signal processor (DSP) 52. An output of the second multiplier 48 is input to the uni-level threshold circuit 40. A second input of the third multiplier 50 is connected to an output of a TNR random access memory (TN RAM) 54. A third input of the third multiplier is connected to the DSP 52. An input of the TNR RAM 54 is also connected to the DSP 52. An output of the third multiplier 50 is connected to an input of an adder 56. Another input of the first adder 56 is connected to the DSP 52. An output of the adder 56 is input to the bi-level threshold circuit 44. The bi-level threshold circuit 44 also receives additional input from the DSP 52. The DSP 52 is also connected to the normalized detector gain term memory 28, the recursive background estimator 32, the noise estimator 38 and the filter bank 42 via a bus connection 60. An inertial reference unit 58 provides input to the DSP 52

[0027] In the present specific embodiment, the sensor 22 is a focal plane array of electro-optical detectors such as charge-coupled devices. Each detector provides an output signal corresponding to a pixel in a frame of image data Each frame of image data represents output signals from each of the detectors during a predetermined time interval. The predetermined time interval is based upon a system frame rate. The system frame rate may vary in accordance with requirements for a particular application and is easily implemented via clocks, timers, and synchronizing circuits by those ordinarily skilled in the art.

[0028] In operation, the sensor 22 receives electromagnetic energy within a field of view of the sensor 22 and converts the electromagnetic energy into an analog electrical signal that is transferred to the ADC 24. The ADC 24 converts the analog electrical signal into a digital signal S_(ij). The digital signal S_(ij) represents the digitized outputs of detectors in the sensor 22 when the sensor 22 is an array of detectors having i rows and j columns. The digital signal S_(ij) is input to the first multiplier 26, which is a digital multiplier

[0029] The normalized detector gain term memory 28 has i times j memory locations, one location for each detector in the sensor 22. Each memory location stores correction terms G_(ij)/σ_(ij) for each ij detector in the sensor 22. The correction terms G_(ij)/σ_(ij) are a ratio of gain non-uniformity correction terms G_(ij) and noise terms σ_(ij). The G_(ij) terms are initially determined in a laboratory environment and are specific to each detector in the sensor 22. The noise terms air are updated during system operation via the DSP 52. The DSP 52 runs software that reads noise variance terms σ_(ij) ² from the noise estimator 38, computes the square root of the noise variance terms σ_(ij) ², and provides the resulting noise estimates to the normalized detector gain term memory 28 via the buss connection 60. The noise variance terms σ_(ij) ² are continually updated during operation of the target detection system 20 when not inhibited from doing so by an inhibit signal from the uni-level threshold circuit 40.

[0030] Those skilled in the art will appreciate that updating of the noise terms σ_(ij) may be implemented in hardware and may be computed without first computing the noise variance terms σ_(ij) ² without departing from the scope of the present invention.

[0031] The correction terms G_(ij)/σ_(ij) from the normalized detector gain term memory 28 are multiplied with digital signal S_(ij) via the first multiplier 26. The first multiplier 26 outputs a calibrated signal comprising S_(ij)(G_(ij)/σ_(ij)) terms to the positive terminal of the subtractor 30 Initially, the negative terminal of the subtractor 30 is zero, and the calibrated signal S_(ij)(G_(ij)/σ_(ij)) initializes the frame store 36, the uni-level threshold circuit 40, the noise estimator 38, and the recursive background estimator 32.

[0032] Those skilled in the art will appreciate that the recursive background estimator 32, the noise estimator 38, the frame integrator 34, and the frame store 36 may be pre-initialized via software running on the DSP 52 without departing from the scope of the present invention.

[0033] Once initialized, the recursive background estimator 32 provides background estimates B_(ij) to the negative terminal of the subtractor 30. Initially, the background estimates B_(ij) are based on the background in the calibrated signal S_(ij)(G_(ij)/σ_(ij)) and thereafter are based on an average of past frames of image data representing an accumulation of S_(ij)(G_(ij)/σ_(ij))—B_(ij) terms from the output of the subtractor 30. The number of frames to be averaged by the recursive background estimator 32 is controllable via software running on the DSP 52. The software is easily constructed by those ordinarily skilled in the art. In addition, the normalized detector gain term memory 28 is easily constructed by those ordinarily skilled in the art and may be implemented in random access memory (RAM) or electrically ereasable programmable read only memory (EEPROM).

[0034] Unlike many conventional target detection systems that only account for detector gain non-uniformities, the present invention accounts for noise non-uniformities via the application of the correction terms G_(ij)/σ_(ij).

[0035] The S_(ij)(G_(ij)/σ_(ij))—B_(ij) terms output from the subtractor 30 represent background subtracted video that comprises frames of image data. The noise estimator 38 computes noise estimates σ_(ij) ² based on the background-subtracted video S_(ij)(G_(ij)/σ_(ij))—B_(ij) and inputs the estimates σ_(ij) ² to the second multiplier 48. The noise estimates σ_(ij) ² are multiplied with a predetermined threshold multiplier TM_E provided via the DSP 52.

[0036] The threshold multiplier TM_E may be computed via the use of a fuzzy controller as discussed more thoroughly below, or via another mechanism without departing from the scope of the present invention The output TM_E*σ_(ij) ² of the second multiplier 48 represents a threshold level of the uni-level threshold circuit 40 The threshold multiplier TM_E is set so that when the output TM_E*σ_(ij) ² term is less than the signed square of the corresponding background subtracted video term S_(ij)(G_(ij)/σ_(ij))—B_(ij), the id detector in the sensor 22 is likely receiving input electromagnetic energy representative of a target.

[0037] The uni-level threshold circuit 40 compares the signed square of the background subtracted video S_(ij)(G_(ij)/σ_(ij))—B_(ij), i.e., (S_(ij)(G_(ij)/σ_(ij))—B_(ij))² with the lower threshold. If the signed square of the background subtracted video S_(ij)(G_(ij)/σ_(ij))—B_(ij) exceeds the lower threshold, then the signal output from the ij detector in the sensor 22 may represent target data or other data that is not desirable to include in noise estimates. The uni-level threshold circuit 40 then outputs an inhibit signal in response thereto to the recursive background estimator 32 and the noise estimator 38. The inhibit signal disables the recursive background estimator 32 and the noise estimator 38 thereby preventing target data or spike data output from a given detector from corrupting the background estimates B_(ij) and the noise estimates σ_(ij) ², respectively.

[0038] By selectively inhibiting the updating of the background estimates B_(ij) and the noise estimates σ_(ij) ² in response to the reception of possible target data by a given detector in the sensor 22, the target detection system 20 of the present invention may account for changes in signal environment and detector performance during system operation. This greatly enhances the performance of the target detection system 20. Conventional target detection systems must often refrain from computing background estimates and noise estimates during system operation due to the fact that target data will otherwise corrupt the estimates.

[0039] Those skilled in the art will appreciate that the computations performed in the modules such as the noise estimator 38 and the uni-level threshold device may be based on averages or accumulations of frames of image date without departing from the scope of the present invention

[0040] To further enhance the target detection capability of the target detection system 20, the frame integrator 34 and the filter bank 42 are employed to increase the signal-to-noise ratio (SNR) of the background subtracted video S_(ij)(G_(ij)/σ_(ij))—B_(ij). The frame integrator 34 adds a predetermined number of frames of background subtracted video S_(ij)(G_(ij)/σ_(ij))—B_(ij), which is three in the present specific embodiment. Signal information in the background subtracted video adds coherently while noise adds non-coherently due to the statistical characteristics of the signal and noise, respectively. As a result, when frames of the background-subtracted video are summed, the SNR is enhanced. The output of the frame integrator 34 has zero mean.

[0041] To account for motion of the target detection system 20 between frames, the background subtracted video S_(ij)(G_(ij)/σ_(ij))—B_(ij) may be re-registered via horizontal or vertical frame shift commands computed by software running on the DSP 52 via input from the inertial reference unit 58. The shift commands are determined via software easily constructed by those ordinarily skilled in the art.

[0042] The filter bank 42 is a bank of finite impulse response (FIR) filters (as discussed more fully below). The filter bank 42 filters output from the frame integrator 34 and selects the maximum value output from each of four matched filters. The maximum value is input to the bi-level threshold circuit 44 where its signed square is compared to a threshold range having an upper threshold and a lower threshold.

[0043] The lower threshold is computed via the adder 56 and the third multiplier 50 with inputs from the TNR RAM 54, the noise estimator 35, and the DSP 52. The third multiplier receives TNR values TR_(ij) from the TNR RAM 54 that stores TNR_(ij) values computed by software running on the DSP 52. The TNR_(ij) values compensate for higher order moments, i.e., moments greater than two in the noise statistic σ_(ij). For example, if the statistical noise distribution for a given detector in the sensor 22 is not Gaussian, the TNR_(ij) values may be applied to compensate for the statistical abnormality. Also, the TNR values TNR_(ij) may be used to disable malfunctioning detectors.

[0044] The third multiplier 50 also receives a threshold multiplier TM input from the DSP 52. A fuzzy controller, (as discussed more fully below) implemented in software running on the DSP 52, computes the threshold multiplier TM based on a desired number of false alarms per frame of data received from the sensor 22 and based on the actual number of alarms detected by the DSP 52 via input from the address generator 46 and based on the number of true track detections from a data processor 59. Inputs (not shown) to the data processor 59 and the construction of the data processor 59 are well known by those ordinarly skilled in the art.

[0045] Those skilled in the art will appreciate that another type of controller other than a fuzzy controller may be used without departing from the scope of the present invention.

[0046] The third multiplier 50 multiplies the noise estimates σ_(ij) ² from the noise estimator 38, TNR values TNR_(ij), and threshold multiplier TM and provides the resulting output σ_(ij) ²*TNR_(ij)*TM to an input of the adder 56. The adder 56 adds the resulting output σ_(ij) ²*TNP_(ij)*TM to an offset μ_(n), which is a software controllable scale factor that provides additional control over the performance of the target detection system 20 and is adjusted according to the requirements of a particular application. The offset μ_(n) is global to all detectors in the array. The resulting sum σ_(ij) ²*TNR_(ij)*TM +μ_(n) represents the lower threshold value T1 _(ij), which is unique to each detector in the sensor 22.

[0047] Unlike many existing target detection systems, the present invention provides thresholds unique to each detector in the sensor 22 so that the target detection system 20 can maximize the use of the performance capabilities of each individual detector. The capabilities of higher performing detectors are not compromised due to unnecessarily high threshold levels applied to the higher performing pixels due to the application of a single threshold based on global detector statistics.

[0048] The upper threshold T2 of the bi-level threshold circuit 44 is software controllable and is adjusted in accordance with the performance requirements for a particular application and is intended to account for gamma spike events and other non-target events that might cause an exceedance of the lower threshold T1 _(ij) by the output of the filter bank 42.

[0049] The bi-level threshold circuit 44 compares the signed square of the output of the filter bank 42 to the threshold range. If the signed square of the output of the filter bank 42 exceeds the lower threshold T1 _(ij) and is less than the upper threshold T2, a detection or ‘alarm’ is indicated for the ij detector via a pulse (such as a 0 or 1) at the output of the bi-level threshold circuit 44. The address generator 46 receives the output of the bi-level threshold circuit, and provides the addresses of the detectors associated with the alarms, i.e., provides the values of i and j to the DSP 52.

[0050] The frame store 36 stores the most current background subtracted video values S_(ij)(G_(ij)/σ_(ij))—B_(ij). The DSP 52 can use the address of the detectors at which alarms have occurred to retrieve associated detector output values from the frame store 36. The associated detector output values are utilized by target detection software running on the DSP 52. The target detection software may be developed by those ordinarily skilled in the art.

[0051] Various signal delays resulting from computations performed in various circuits such as the noise estimator 38, the recursive background estimator 32, and the subtractor 30 are accounted for via the application of clocking circuits and delays (not shown) which are easily designed and implemented by those ordinarily skilled in the art.

[0052]FIG. 2 is a diagram of the recursive background estimator 32 of the target detection system 20 of FIG. 1. The recursive background estimator 32 includes, from left to right, an electrically controllable switch 70, a background estimator multiplier 72, a background estimator adder 74, and a background estimate memory 76. The output of the switch 70 is connected to an input of the background estimator multiplier 72. Another input of the background estimator multiplier 72 is connected to the DSP 52 of FIG. 1 via the bus connection 60 and provides a time constant to the recursive background estimator 32. The bus connection 60 also provides a software read and write connection background estimate memory 76. An output of background estimator multiplier 72 is connected to an input of the background estimator adder 74. Another input of the background estimator adder 74 is connected to an output of the background estimate memory 76, which also represents the output of the recursive background estimator 32. The output of the background estimator adder 74 is input to the background estimate memory 76.

[0053] The electrically controllable switch 70 switches its output from the background subtracted video S_(ij)(G_(ij)/σ_(ij))—B_(ij) to a ground connection in response to an inhibit signal from the uni-level threshold circuit 40 of FIG. 1. Those skilled in the art will appreciate that the electrically controllable switch 70 may be implemented as a 2 to 1 multiplexer. The inhibit signal thereby deactivates the recursive background estimator 32 when the uni-level threshold circuit of FIG. 1 detects an exceedance of the corresponding lower threshold T1_E_(ij).

[0054] The DSP 52 has software read and write access to the background estimate memory 76, which is implemented in RAM in the present specific embodiment. The background estimate memory 76 is be implemented via another type of memory such as an electrically erasable programmable read only memory EEPROM) without departing from the scope of the present invention

[0055] The recursive background estimator 32 provides temporally adaptive mean background estimation localized to each detector of the sensor 22 of FIG. 1. The recursive background estimator 32 is implemented as a digital single pole infinite impulse response (TIR) filter having a filter time constant under software control that is changeable at the frame rate of the sensor 22 of Fig 1.

[0056] The recursive background estimator 32 may update continuously, or be inhibited from updating as a result of an inhibit signal provided via the uni-level threshold circuit or via a global software inhibit signal. The global inhibit signal applies to all detectors in the sensor 22 of FIG. 1 and is selectively provided at an input of the background estimator multiplier 72.

[0057] With reference to FIGS. 1 and 2, when not globally inhibited from updating, a feedback signal, unique to each detector in the sensor 22, from the uni-level threshold circuit 40, inhibits background updates on detectors that have a threshold exceedance, or are neighbors of detectors which have a threshold exceedance. This feature prevents target data from corrupting the background estimates.

[0058]FIG. 3 is a diagram of the noise estimator 38 of the target detection system 20 of FIG. 1. The noise estimator 38 includes, from left to right, an inhibit switch 80 a first noise estimator multiplier 82, a noise estimator subtractor 84, a second noise estimator multiplier 86, a noise estimator adder 88, and a noise variance memory 90.

[0059] The operation of the inhibit switch 80 is similar to the operation of the electrically controllable switch 70 of FIG. 2. The output of the inhibit switch 80 is squared via the first noise estimator multiplier 82 and output to a positive terminal of the noise estimator subtractor 84, the negative terminal of which is connected to an output of the noise variance memory 90, which is similar to the background estimate memory 76 of FIG. 2. An output of the noise estimator subtractor 84 is connected to an input of the second noise estimator multiplier 86, a second input of which is connected to the bus connection 60, which provides a time constant to the multiplier 86 via the bus connection 60 and the DSP 52.

[0060] With reference to FIGS. 1 and 3, a signal from the DSP 52 may be used to is globally inhibit noise estimates from being performed on all detectors in the sensor 22. An inhibit signal from the uni-level threshold circuit 40 is input to the inhibit switch 80 and selectively inhibits noise estimates from being computed by the noise estimator 38 for the particular detectors having outputs associated with an exceedance of the threshold of the uni-level threshold circuit 40.

[0061] The noise estimator 38 provides noise variance estimation localized to each detector in the sensor 22. The gain-normalized and background-subtracted video S_(ij)(G_(ij)/σ_(ij))—B_(ij) is squared and filtered to develop an estimate of the detector noise variance. The noise estimator 38 is a single pole HR filter with the filter time constant under software control and changeable at the frame rate of the sensor. The noise estimator 38 can be allowed to update continuously at the sensor frame rate, or can be inhibited from updating as a result of a global inhibit signal generated by software and applied via the bus connection 60 and the second noise estimator multiplier 86. In the present specific embodiment, the noise variance memory 90 is a software read/write RAM and provides read/write access to software functions running on the DSP 52 of FIG. 1 via the bus connection 60. With access to noise variance terms stored in the noise variance memory 90, software functions can compensate the outputs of individual detectors in the sensor 22 for noise on-uniformity. This compensation is accomplished by dividing the gain correction factor by G_(ij) by the square root of the noise variance estimate output from the noise variance memory 90. The gain correction factors divided by the square roots of the noise estimates are stored in the normalized detector gain term memory 28 of FIG. 1.

[0062]FIG. 4 is a diagram of the frame integrator 34 of the target detection system 20 of FIG. 1. An input of the frame integrator 34 is provided to an input of a fame integrator multiplexer (MUX) 100. The MUX 100 provides output, in parallel, to a first frame store 102, a second frame store 104, a third frame store 106, and a fourth frame store 108, and stores consecutive frames in adjacent frame stores. The most recent frame of data received by the MUX 100 is stored in the first frame store 102 and the second most recent frame of data is stored in the second frame store 104 and so on. Outputs of the frame stores 102, 104, 106, and 108 are input to a frame summing circuit 110 that selects the three most recent frames of data and adds them Before summing, the frame summing circuit 40 applies any frame shifts required to spatially register the frames to the nearest pixel, in response to movement of the target detection system 20. In the present discussion, pixels correspond to background subtracted and gain corrected outputs of individual detectors in the sensor 22 of FIG. 1.

[0063] With reference to FIGS. 1 and 4, any necessary frame shift signals are provided by the software running on the DSP 52 that takes into account system movement via use of the IRU 58.

[0064] The MUX 100, the frame stores 102, 104, 106, and 108, and the frame summing circuit 100 may be easily constructed by those ordinarily skilled in the art. In addition, the frame integrator 34 may be replaced with a different frame integrator, such as one implemented in software, without departing from the scope of the present invention

[0065] The frame integrator may be selectively bypassed via a bypassing multiplexer (not shown) and a control signal input from the DSP 52 of FIG. 1 to the bypassing multiplexer. The frame integrator 34 may be selectively bypassed in other ways without departing from the scope of the present invention.

[0066]FIG. 5 is a diagram of the matched filter bank 42 of the target detection system 20 of FIG. 1. A matched filter bank MUX 120 receives an input of the filter bank 42 corresponding to an output of the frame integrator 34 of FIG. 1. The MUX 42 has four outputs, each of which is connected to one of four matched finite impulse response (FIR) filters 122. A frame of image data is input to different matched filters 122 via the MUX 120. The outputs of the matched filters 122 are connected to a maximization circuit 124 that selects the matched filter output signal having the largest value. The maximum filtered value output to the bi-level threshold circuit for threshold comparisons.

[0067]FIG. 6 is a diagram of a diagram of a finite impulse response (FIR) filter 122 of the filter bank 42 of FIG. 5. The FIR filter 122 is 3×3 spatial FIR filter whose transfer function if convolved with frame data. The transfer functions, represented by the coefficients f_(ij), are convolved with frame data and are designed to boost target SNR. Typically, the filter coefficients f_(ij) are matched to a convolved optical point spread function (OPSF) of the sensor 22 of FIG. 1 for up to four different phasings of the OPSF on the ij detector of the sensor 22 The coefficients f_(ij) are normalized to preserve total noise power of the zero-mean input signal from the frame integrator 34 of FIG. 1.

[0068] Those skilled in the art will appreciate that a filter kernel other than a 3×3 filter kernel such as a 5×5 or 7×7 filter kernel may be used for the FIR filter 122 without departing from the scope of the present invention.

[0069] With reference to FIGS. 1 and 6, the DSP 52 has software read/write access to the coefficients f_(ij) and can change the coefficients f_(ij) at the frame rate of the sensor 22. This facilitates matching of the filter coefficients f_(ij) to the velocity of a point source target across the detector array of the sensor 22 via inputs from the IRU 58.

[0070]FIG. 7 is a diagram showing key functional blocks of a fuzzy threshold controller implemented in the digital signal processor 52 of the target detection system 20 of FIG. 1. The fuzzy threshold controller 130 includes a target detection counter 132, an input of which is connected to the address generator 46 of FIG. 1. An output of the target detection counter 132 is connected to one input of a fuzzifier input calculation circuit 134, another input of which is connected to a first output of an input device 136. Second and third outputs of the input device 136 are connected to a threshold multiplier initializer 138. An output of the fuzzifier input calculation circuit 134 is input to a fuzzifier 140, the output of which is connected, in parallel to an inference engine 142 and to an input of a defuzzifier 144. An output of the inference engine 142 is connected to another input of the defuzzifier 144, the output of which is connected to an input of a fuzzy threshold controller multiplier 146. Another input of the fuzzy threshold controller multiplier 146 is connected to an output of a ΔTM calculator 148, the input of which is connected to the first output of the input device 136 The first output is also connected to an input of the fuzzifier input calculation circuit 134. An output of the fuzzy threshold controller multiplier 146 is connected to an input of a fuzzy threshold controller adder 150, another input of which is connected to a frame delay circuit 152. An input of the frame delay circuit 152 is connected to an output of the fuzzy threshold controller adder 150 and another input of the frame delay circuit 152 is connected to an output of the TM initializer 138.

[0071] In operation, the target detection counter 132 receives an input from the address generator 46 of FIG. 1 and outputs the number of alarms, i.e., the number of detections (N) received in an image frame to a fuzzifier input calculation circuit 134. The desired number of false detections may be adjusted in accordance with the performance requirements for a particular application. Those skilled in the art will appreciate that the target detection counter 132 may be designed to receive input directly from the bi-level threshold circuit 44 without departing from the scope of the present invention.

[0072] The input device 136, which may be implemented as a keypad, allows a user to input a desired number of detections ({overscore (N)}) to be received by the target detection counter 132 during a frame.

[0073] The fuzzifier input calculation circuit provides an input to the fuzzifier 140 that is computed in accordance with the following equation:

(N−{overscore (N)})/({overscore (N)})^(½),  [1]

[0074] where N is the number of detections in a frame and {overscore (N)} is the desired number of detections in a frame.

[0075] The fuzzifier 140 computes a fit vector I={a1, a2, . . . , am} in accordance with an input feature (as discussed more fully below). In the present specific embodiment, m is 7, which corresponds to the number of input regions of the input feature. Each (N−{overscore (N)})/({overscore (N)})^(½) value is mapped into a predetermined number of input regions, i.e., sets Ai, and each value is assigned a particular degree of fit in the associated input regions in accordance with the rules of the input feature. In the present specific embodiment, i ranges from 1 to 7 and is the number of input regions of the input feature. For example, a particular value for (N−{overscore (N)})/({overscore (N)})^(½) may cause the fuzzifier to activate first and second input regions of the input feature, and assign the input (N−{overscore (N)})/({overscore (N)})^(½) degrees of fit a1 and a2 corresponding to the first and second regions, respectively. This results in a fit vector of I={a1, a2, 0, 0, 0, 0, 0}.

[0076] The fuzzifier 140 maps continuous measurements (N−{overscore (N)})/({overscore (N)})^(½)) into membership values in the input fuzzy sets Ai. Let the input measurement be the variable x=(N−{overscore (N)})/({overscore (N)})^(½) and let the domain of x be the interval [x_(a), x_(b)]. The input space is spanned by the set {Ai} of input f sets Ai for i=1, 2, . . . , m, where m is 7 in the present specific embodiment A membership function μ_(i)(x) is associated with each fuzzy set Ai. The membership function μ_(i)(x) maps, via the fuzzifier 140, the input x into the degree of membership in Ai resulting in the input fuzzy vector I={a1, a2, . . . am} where ai is the membership value of the input x in the ith fuzzy set Ai and can take on values in the interval [0, 1] in the present specific embodiment

[0077] The fit vector I is input to the inference engine 142 The inference engine 142 maps elements of the fit vector I into output regions, i.e., sets Bj having centroids Cj and areas Rj, in accordance with rules of an output feature (as discussed more fully below). In the present specific embodiment, j ranges from 1 to 7, where 7 is the number of output regions of the output feature.

[0078] The inference engine 142 maps the input fuzzy sets Ai into the output fuzzy sets Bj in accordance with the rules of the output feature. In the present specific embodiment, the rules of the output feature are of the form if (A) then (B). The fuzzy threshold controller utilizes seven input fuzzy sets Ai and seven output fuzzy sets Bj, each set Ai and Bj having elements given the linguistic names LN, MN, SN, ZERO, SP, MP, LP which stand for large negative, medium negative, small negative, zero, small positive, medium positive, and large positive, respectively. The following table defines seven fuzzy rules implemented by the inference engine 142. TABLE 1 ( Ai; Bj(i) ) ( LN; LP ) ( MN; MP ) ( SN; SP ) (ZERO; ZERO ) ( SP; SN ) ( MP; MN ) ( LP; LN )

[0079] The output fuzzy set Bj(i) is the jth output fuzzy set and is associated with the ith input fuzzy set Ai. The fuzzy rules are of the form (Ai;Bj(i)), which is interpreted as “If the input fuzzy set is Ai, then the output fuzzy set Bj(i) is activated”. For example, if the input fuzzy set LP is activated, the inference engine 142 activates the output fuzzy set LN.

[0080] The defuzzifier 144 computes an output ({overscore (y)}) based on a linear combination of elements ai of the input fit vector I and the corresponding output regions having centroids Cj(i) and areas Rj(i). The output of the defuzzifier 144 is a weighted centroid computed in accordance with the following equation: $\begin{matrix} {{\overset{\_}{y} = {\sum\limits_{i = 1}^{m}\quad {{ai}*{{Rj}(i)}*{{{Cj}(i)}/{\sum\limits_{i = 1}^{m}\quad {{Rj}(i)}}}}}},} & \lbrack 2\rbrack \end{matrix}$

[0081] The output {overscore (y)} of the defuzzifier 144 is multiplied with a delta threshold multiplier (ΔTM) via the multiplier 146. ΔTM is computed in accordance with the following equation:

ΔTM=−2/{square root over ()}{overscore (N)},  [3]

[0082] where {overscore (N)} is the desired number of alarms in an image frame The output of the multiplier 146 is {overscore (y)}*ΔTM and is added to the output of the frame delay 152 via the adder 150. The output of the frame delay is either an initial threshold multiplier value provided by the TM initializer 138 or the output of the adder 150 delayed by one frame. The TM initializer is selectively activated via an enable connection from the input device 136. The TM initializer may be activated by user input via the input device 136 or may be activated by another means without departing from the scope of the present invention.

[0083] The TM initializer 138 computes the initial value TM in accordance with the following equation:

TM=2*(erf ¹(1-2*Pfa))²,  [4]

[0084] where Pfa is the desired probability of false alarms and is specified by a user via the input device 136 The output of the fuzzy threshold controller adder 150 represents the global threshold multiplier TM and is input to the third multiplier SO of FIG. 1.

[0085] With reference to FIGS. 1 and 7, the global threshold multiplier TM controls the values of the thresholds T1 _(ij) for detectors in the detector array of the sensor 22 in the bi-level threshold circuit 44. The fuzzy threshold controller 130 may be implemented in software or hardware by those ordinarily skilled in the art. The fuzzy threshold controller 130 maintains a constant threshold exceedance rate, i.e., a constant probability of false alarm (Pfa) which may be specified by a user via the input device 136. The fuzzy threshold controller 130 monitors the number of alarms during a predetermined time interval and adjusts the threshold multiplier TM and thereby the lower threshold T1 _(ij) accordingly.

[0086] The input device 136 includes a memory device (not shown) that maintains a nominal value {overscore (N)} for the desired number of detections per frame. The actual number of false detections N associated with a given frame is compared to the nominal value {overscore (N)}. The fuzzy threshold controller 130 incrementally changes the TM by an amount ΔTNR based on the normalized deviation between the actual number of noisy detections N and the nominal value {overscore (N)}. i.e., (N−{overscore (N)})/({overscore (N)})^(½).

[0087] Additional fuzzy logic controllers (not shown) identical to the fuzzy logic controller 130 may be implemented to control the false alarm rate due to the presence of periodic noise spikes in the sensor frame data.

[0088]FIG. 8 is a graph of the input feature 160 of the fuzzy threshold controller 130 of FIG. 7. The input feature 160 includes seven sets Ai corresponding to the regions labeled MN, SN, ZERO, SP, ME and LP. A horizontal axis 162 represents the input x=(N−{overscore (N)})/({overscore (N)})^(½). A vertical axis 164 represents degrees of fit. For example, if the input is approximately 5, the MP region and the LP regions are activated. The NT region is activated with a degree of fit of approximately ½ and the LP region is activated with a degree of fit of 1. The fit vector I={a1, . . . am} will contain the elements ½ and 1. The corresponding output fuzzy sets Bj(i), i.e., the sets MN and LN of the output feature will be activated in accordance with the fuzzy rules depicted in Table 1 and as discussed more fully below.

[0089]FIG. 9 is a graph of the output feature 170 of the fuzzy threshold controller 130 of FIG. 7. The output feature 170 includes seven sets Bj(i) corresponding to the regions labeled LN, M, SN, ZERO, SP, ND, and LP. An output feature horizontal axis 172 represents y values internal to the inference engine 142. An output feature vertical axis 174 represents a degree of membership in each of the output regions LN, MN, SN, ZERO, SP, MP, and LP.

[0090] With reference to FIGS. 7, 8, and 9 if (N−{overscore (N)})/({overscore (N)})^(½) is large, for example 8, the number of detections N is much larger than the desired number of detections {overscore (N)}. The LP region of the input feature 160 is activated. The inference engine 142 then activates the LN output region. With reference to equation (2), because absolute values of the centroid Cj(i) and corresponding area Rj(i) of the LN output region are relatively large, the output {overscore (y)} of the defuzzifier 144 will be a relatively large negative value due to the negative centroid value Cj(i). The output of the multiplier 146 will be a relatively large positive value after multiplication by ΔTM, which is negative. When the output of the multiplier 146 is added to the previous TM via the adder 150, the output of the adder 150 will yield an appropriate increase in the TM. The resulting higher threshold level will result in a reduction of the number of detections N and hence, (N−{overscore (N)})/({overscore (N)})^(½) will be become smaller In this way, the fuzzy controller 130 of FIG. 7 facilitates the maintenance of an approximately constant probability of false alarms in a particular frame in accordance with the desired number of alarms {overscore (N)}.

[0091] Thus, the present invention has been described herein with reference to a particular embodiment for a particular application Those having ordinary skill in the art and access to the present teachings will recognize additional modifications, applications and embodiments within the scope thereof.

[0092] It is therefore intended by the appended claims to cover any and all such applications, modifications and embodiments within the scope of the present invention.

[0093] Accordingly, 

What is claimed is:
 1. An accurate target detection system comprising: first means for receiving electromagnetic signals and providing electrical signals in response thereto; second means for correcting non-uniformities in said first means based on said electrical signals and providing calibrated electrical signals in response thereto; third means for determining if a target signal is present within said calibrated electrical signals and providing a target detection signal in response thereto; and fourth means for selectively activating or deactivating said second means based on said target detection signal.
 2. The invention of claim 1 wherein said first means is an array of electromagnetic energy detectors, each detector providing an electrical detector output signal.
 3. The invention of claim 2 wherein said second means includes means for compensating for gain, background, and/or noise non-uniformities in said electromagnetic energy detectors.
 4. The invention of claim 3 wherein said second means includes a detector gain term memory for storing detector gain compensation values, said detector gain compensation values normalized by noise estimates.
 5. The invention of claim 4 wherein said noise estimates are unique to each of said detectors.
 6. The invention of claim 2 wherein said third means includes means for increasing the signal-to-noise ratio of said calibrated electrical signals.
 7. The invention of claim 6 wherein said third means includes means for estimating noise in each of said detector output signals and providing noise estimates in response thereto.
 8. The invention of claim 7 wherein said means for estimating noise further includes means for recursively estimating background in said electrical signals.
 9. The invention of claim 8 wherein said means for estimating noise includes a noise estimator circuit and a recursive background estimator circuit.
 10. The invention of claim 7 wherein said third means further includes a subtractor for subtracting background from said calibrated electrical signals and providing background subtracted signals in response thereto.
 11. The invention of claim 10 wherein said means for increasing the signal-to-noise ratio of said electrical signals includes means for adding frames of image data, each frame containing data corresponding to said background subtracted signals and providing summed frames in response thereto.
 12. The invention of claim 11 wherein said means for increasing the signal-to-noise ratio further includes a filter bank for increasing the signal-to-noise ratio of said summed frames and providing a filtered signal in response thereto.
 13. The invention of claim 12 wherein said filter bank includes finite-impulse response filters.
 14. The invention of claim 12 wherein said third means includes a first threshold circuit for comparing said filtered signal to a first threshold and a second threshold and providing a threshold exceedance signal if said filtered signal is between said first threshold and said second threshold.
 15. The invention of claim 14 wherein said third means further includes a digital signal processor running a fuzzy controller that facilitates the determination of said first threshold by providing a threshold multiplier value.
 16. The invention of claim 15 wherein said first threshold is a function of said threshold multiplier and noise variables for said background subtracted signals.
 17. The invention of claim 16 wherein said noise variables include a mean noise offset, noise variance estimates from said background subtracted signals, and a noise statistic for accounting for moments greater than two in noise statistics of said background subtracted signals.
 18. The invention of claim 10 wherein said fourth means includes a second threshold circuit for comparing said background subtracted signals to a target detection threshold and providing said target detection signal in response thereto when said background subtracted signals exceed said target detection threshold.
 19. The invention of claim 18 wherein said target detection signal acts as an inhibit signal and is input to said means for estimating noise to disable said means for estimating noise when said target signal is possibly present with in said background subtracted signals.
 20. The invention of claim 18 wherein said first threshold is a function of said noise variance estimates, and a second threshold multiplier.
 21. A target detection system comprising: first means for receiving electromagnetic signals within a field of view of said first means and for providing electrical signals in response thereto; second means for compensating said first means for varying performance characteristics or signal environments; third means for analyzing said electrical signals to determine if a target is present within said field of view, and fourth means in communication with said third means for selectively deactivating said second means when a target is possibly present within said field of view.
 22. An accurate target detection system comprising: a sensor for receiving electromagnetic signals within a field of view of said sensor and providing electronic signals in response thereto; a non-uniformity correction circuit for compensating said sensor for spatial non-uniformities; a background estimation circuit for estimating background characteristics of said electromagnetic signals; a subtraction circuit for subtracting said background characteristics from said electronic signals; a threshold circuit for analyzing said electronic signals to determine if a target may be present in said field of view of said sensor; and an update inhibit circuit for disabling said background estimation circuit and said non-uniformity correction circuit when a possible target is present in said field of view of said sensor.
 23. A fuzzy controller for facilitating the calculation of a false alarm rate detection threshold in a constant false alarm rate target detection system comprising: first means for mapping an input into a first set of values defined by an input feature, said input a function of a number of alarms received during a predetermined time interval by said target detection system in response to a pre-existing false alarm rate detection threshold, and a number of desired alarms; second means for establishing a set of fin regions based on said first set of values in accordance with an output feature; and third means for calculating a desired change in said pre-existing false alarm rate detection threshold based on a weighted sum centroids and areas of said regions and providing said false alarm rate detection threshold in response thereto.
 24. The invention of claim 23 wherein said sum of said centroids and areas is weighted by said third means via said first set of values.
 25. An accurate target detection method comprising the steps of: receiving electromagnetic signals and providing electrical signals in response thereto; correcting non-uniformities in said electrical signals and providing calibrated electrical signals in response thereto; determining if a target signal is present within said calibrated electrical signals and providing a target detection signal in response thereto; and selectively performing said step of correcting based on said target detection signal. 